package com.nineclock.sign;
import com.nineclock.common.entity.PageResult;
import com.nineclock.common.entity.Result;
import com.nineclock.sign.dto.SignAllUserDTO;
import com.nineclock.sign.dto.SignDTO;
import com.nineclock.common.entity.PageResult;
import com.nineclock.sign.dto.SignPCListDTO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.nineclock.sign.dto.SignDTO;

import java.io.IOException;
import java.util.List;

@Api(value = "签到管理接口",tags = "签到服务")
public interface SignControllerApi {

    @ApiOperation("移动端签到")
    public Result sign (SignDTO signDTO);

    @ApiOperation("考勤组: 列表查询")
    public Result<PageResult<SignPCListDTO>> querySignPCListPage(
            Integer page,Integer pageSize,String startTime, String endTime);

    @ApiOperation(value = "导出指定时间段之内的签到数据")
    public void exportSignData(String startTime , String endTime) throws IOException;

    @ApiOperation(value = "签到: 获取当前用户当天签到次数")
    public Result getDayCount();

    @ApiOperation(value = "签到: 查询当前员工本月签到记录")
    public Result<List<SignDTO>> pagingSignCurrentUserByMonth(String dateStr);

    @ApiOperation(value = "签到: 查看所有员工指定日期签到列表")
    public Result<List<SignAllUserDTO>> listSignAllUser(String dateStr);


}
